home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1996 June
/
EnigmA AMIGA RUN 08 (1996)(G.R. Edizioni)(IT)[!][issue 1996-06][EARSAN CD VII].iso
/
earcd
/
gcc
/
ixemlsrc.lha
/
ixemul
/
Makefile.in
< prev
next >
Wrap
Makefile
|
1996-04-03
|
16KB
|
404 lines
#### Start of system configuration section. ####
srcdir = @srcdir@
VPATH = @srcdir@
# Common prefix for machine-independent installed files.
prefix = @prefix@
# Common prefix for machine-dependent installed files.
exec_prefix = @exec_prefix@
bindir = $(exec_prefix)/bin
libdir = $(exec_prefix)/lib
syslibsdir = $(exec_prefix)/Sys/libs
sysldir = $(exec_prefix)/Sys/l
incdir = $(exec_prefix)/include
etcdir = $(exec_prefix)/etc
mandir = $(prefix)/man
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
CC = @CC@
AS = as
CFLAGS = @CFLAGS@
LDFLAGS = @LDFLAGS@
RANLIB = @RANLIB@
#### End system configuration section ####
# Default is generic m68k version with no FPU support.
CPU = 68000
FPU = soft-float
BASE = no-baserel
# Comment this line to compile each source instead of catenating the
# sources together into one big source. Note: catenating the sources
# not only speeds up compilation, it also reduces the library size!
export CATENATE = 1
# Some additional options for OTHER_CFLAGS that may or may not be useful are:
#
# -funroll-loops
# -fforce-mem
# -DDEBUG_VERSION (build a debugging version)
# Use the flag to suppress stack extension when 2.6.4/2.7 is installed.
# STACKEXTEND = -mnostackextend
# Use ixnet.library for network calls
NETWORKING = -DUSE_NET
OTHER_CFLAGS = -fomit-frame-pointer $(STACKEXTEND) $(NETWORKING) -Wall
BASE_FLAGS_TO_PASS = \
"AS=$(AS)" \
"BASE=$(BASE)" \
"BUILDDIR=$(BUILDDIR)" \
"CC=$(CC)" \
"CFLAGS=$(CFLAGS)" \
"CPU=$(CPU)" \
"FPU=$(FPU)" \
"LDFLAGS=$(LDFLAGS)" \
"OTHER_CFLAGS=$(OTHER_CFLAGS)" \
"RANLIB=$(RANLIB)"
FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_FLAGS_TO_PASS)
### The default thing to do is to make all reasonable combinations of the
### library.
###
### Note that libsrc, which builds the runtime startup files and both
### versions of libc.a, completely ignores the FPU/CPU/BASE variables,
### so we just call it directly. Also note that the 68000 versions
### of the files MUST be built before libsrc.
###
### Other than the restriction noted above, you can comment out specific
### CPU/FPU combinations that you are not interested in. However you
### do have to build both the baserel and no-baserel versions for the
### combinations you want to build.
all:
$(MAKE) build CPU=68000 FPU=soft-float BASE=no-baserel
$(MAKE) build CPU=68000 FPU=soft-float BASE=baserel
$(MAKE) build CPU=68020 FPU=68881 BASE=no-baserel
$(MAKE) build CPU=68020 FPU=68881 BASE=baserel
$(MAKE) build CPU=68020 FPU=soft-float BASE=no-baserel
$(MAKE) build CPU=68020 FPU=soft-float BASE=baserel
$(MAKE) build CPU=68030 FPU=68881 BASE=no-baserel
$(MAKE) build CPU=68030 FPU=68881 BASE=baserel
$(MAKE) build CPU=68030 FPU=soft-float BASE=no-baserel
$(MAKE) build CPU=68030 FPU=soft-float BASE=baserel
$(MAKE) build CPU=68040 FPU=68881 BASE=no-baserel
$(MAKE) build CPU=68040 FPU=68881 BASE=baserel
$(MAKE) build CPU=68040 FPU=soft-float BASE=no-baserel
$(MAKE) build CPU=68040 FPU=soft-float BASE=baserel
@(cd libsrc && $(MAKE) $(FLAGS_TO_PASS))
@(cd utils && $(MAKE) $(FLAGS_TO_PASS))
### The "build" target makes a single flavor of the library. I.E.
### the 68040+FPU version.
build:
@$(MAKE) general-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) stdio-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) stdlib-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) string-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) ixglue-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) library-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) glue-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) ixnet-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) stack-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
@$(MAKE) static-$(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS)
### These targets are used to map a generic target <builddir>-<BASE>-<CPU>-<FPU>
### to one of the less complicated targets. I.E. if something only needs to
### be built for a particular CPU and FPU, and the value of BASE is irrelevant,
### then it would be mapped to <CPU>-<FPU>.
general-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=general
glue-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(BASE) $(FLAGS_TO_PASS) BUILDDIR=glue
ixnet-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=ixnet
ixglue-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(BASE) $(FLAGS_TO_PASS) BUILDDIR=ixglue
library-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=library
stack-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=stack
static-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(BASE)-$(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=static
stdio-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=stdio
stdlib-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=stdlib
string-$(BASE)-$(CPU)-$(FPU):
@$(MAKE) $(CPU)-$(FPU) $(FLAGS_TO_PASS) BUILDDIR=string
### These targets are the ones that are reduced from the full generic
### targets, on a per directory basis. I.E. if it is only necessary
### to build versions for a specific BASE and the CPU/FPU combination
### is irrelevant, then the generic target is mapped to just BASE.
# This target is for things that are only dependent on BASE.
$(BASE):
@if [ -d $(BUILDDIR)/$(BASE) ]; then \
true; \
else \
echo mkdir -p $(BUILDDIR)/$(BASE); \
mkdir -p $(BUILDDIR)/$(BASE); \
fi;
@(cd $(BUILDDIR)/$(BASE) ; $(MAKE) -f ../Makefile $(FLAGS_TO_PASS));
# This target is for things that are only dependent on CPU and FPU.
$(CPU)-$(FPU):
@if [ -d $(BUILDDIR)/$(CPU)/$(FPU) ]; then \
true; \
else \
echo mkdir -p $(BUILDDIR)/$(CPU)/$(FPU); \
mkdir -p $(BUILDDIR)/$(CPU)/$(FPU); \
fi;
@(cd $(BUILDDIR)/$(CPU)/$(FPU) ; $(MAKE) -f ../../Makefile $(FLAGS_TO_PASS))
# This target is for things that are dependent on CPU, FPU, and BASE.
$(BASE)-$(CPU)-$(FPU):
@if [ -d $(BUILDDIR)/$(BASE)/$(CPU)/$(FPU) ]; then \
true; \
else \
echo mkdir -p $(BUILDDIR)/$(BASE)/$(CPU)/$(FPU); \
mkdir -p $(BUILDDIR)/$(BASE)/$(CPU)/$(FPU); \
fi;
@(cd $(BUILDDIR)/$(BASE)/$(CPU)/$(FPU) ; $(MAKE) -f ../../../Makefile $(FLAGS_TO_PASS));
### Install all the libraries, include files, runtime files, etc.
install: installdirs
$(INSTALL) library/68000/soft-float/ixemul.library $(syslibsdir)/ixemul.library
$(INSTALL) library/68000/soft-float/ixemul.trace $(syslibsdir)/ixemul.trace
$(INSTALL) library/68000/soft-float/ixemul.library $(syslibsdir)/ixemul000.library
$(INSTALL) library/68000/soft-float/ixemul.trace $(syslibsdir)/ixemul000.trace
$(INSTALL) library/68020/soft-float/ixemul.library $(syslibsdir)/ixemul020.library
$(INSTALL) library/68020/soft-float/ixemul.trace $(syslibsdir)/ixemul020.trace
$(INSTALL) library/68030/soft-float/ixemul.library $(syslibsdir)/ixemul030.library
$(INSTALL) library/68030/soft-float/ixemul.trace $(syslibsdir)/ixemul030.trace
$(INSTALL) library/68040/soft-float/ixemul.library $(syslibsdir)/ixemul040.library
$(INSTALL) library/68040/soft-float/ixemul.trace $(syslibsdir)/ixemul040.trace
$(INSTALL) library/68020/68881/ixemul.library $(syslibsdir)/ixemul020fpu.library
$(INSTALL) library/68020/68881/ixemul.trace $(syslibsdir)/ixemul020fpu.trace
$(INSTALL) library/68030/68881/ixemul.library $(syslibsdir)/ixemul030fpu.library
$(INSTALL) library/68030/68881/ixemul.trace $(syslibsdir)/ixemul030fpu.trace
$(INSTALL) library/68040/68881/ixemul.library $(syslibsdir)/ixemul040fpu.library
$(INSTALL) library/68040/68881/ixemul.trace $(syslibsdir)/ixemul040fpu.trace
$(INSTALL) ixnet/68000/soft-float/ixnet.library $(syslibsdir)/ixnet.library
$(INSTALL) ixnet/68000/soft-float/ixnet.library $(syslibsdir)/ixnet000.library
$(INSTALL) ixnet/68020/soft-float/ixnet.library $(syslibsdir)/ixnet020.library
$(INSTALL) ixnet/68030/soft-float/ixnet.library $(syslibsdir)/ixnet030.library
$(INSTALL) ixnet/68040/soft-float/ixnet.library $(syslibsdir)/ixnet040.library
$(INSTALL) ixnet/68020/68881/ixnet.library $(syslibsdir)/ixnet020fpu.library
$(INSTALL) ixnet/68030/68881/ixnet.library $(syslibsdir)/ixnet030fpu.library
$(INSTALL) ixnet/68040/68881/ixnet.library $(syslibsdir)/ixnet040fpu.library
$(INSTALL) libsrc/bcrt0.o $(libdir)/bcrt0.o
$(INSTALL) libsrc/crt0.o $(libdir)/crt0.o
$(INSTALL) libsrc/gcrt0.o $(libdir)/gcrt0.o
$(INSTALL) libsrc/mcrt0.o $(libdir)/mcrt0.o
$(INSTALL) libsrc/rcrt0.o $(libdir)/rcrt0.o
$(INSTALL) libsrc/libc.a $(libdir)/libc.a
$(INSTALL) libsrc/libbc.a $(libdir)/libb/libc.a
$(INSTALL) libsrc/libc_p.a $(libdir)/libc_p.a
$(INSTALL_PROGRAM) utils/ixtrace $(bindir)/ixtrace
$(INSTALL_PROGRAM) utils/ixprefs $(bindir)/ixprefs
$(INSTALL_PROGRAM) utils/ixtimezone $(bindir)/ixtimezone
$(INSTALL_PROGRAM) utils/ixrun $(bindir)/ixrun
$(INSTALL) utils/ixpipe-handler $(sysldir)/ixpipe-handler
(cd $(srcdir)/include && cp -r . $(incdir))
find $(incdir) -type d -name CVS -print | xargs rm -rf
(cd $(srcdir)/man && cp -r . $(mandir))
find $(mandir) -type d -name CVS -print | xargs rm -rf
mkdir -p $(etcdir)/zoneinfo
(cd utils/zoneinfo && cp -r . $(etcdir)/zoneinfo)
installdirs: mkinstalldirs
$(srcdir)/mkinstalldirs $(bindir) $(libdir) $(syslibsdir) \
$(sysldir) $(incdir) $(etcdir)
clean:
(cd general ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd glue ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd ixglue ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd ixnet ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd stack ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd static ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd stdio ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd stdlib ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd string ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd library ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd libsrc ; $(MAKE) $(FLAGS_TO_PASS) clean)
(cd utils ; $(MAKE) $(FLAGS_TO_PASS) clean)
clobber:
(cd general ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd glue ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd ixglue ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd ixnet ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd stack ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd static ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd stdio ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd stdlib ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd string ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd library ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd libsrc ; $(MAKE) $(FLAGS_TO_PASS) clobber)
(cd utils ; $(MAKE) $(FLAGS_TO_PASS) clobber)
rm -f Makefile config.* conftest.c
# Build source and binary distribution files.
dist:
#
# First get rid of any leftovers from a previous "make dist"
#
rm -rf gnu ixemul distrib
mkdir -p distrib
#
# Create ixemul-bin.lha, which contains utilities
# that are generally useful to ixemul.library users.
#
mkdir -p gnu/bin gnu/Sys/l gnu/Sys/devs
cp -p utils/ixprefs gnu/bin/ixprefs
cp -p utils/ixtrace gnu/bin/ixtrace
cp -p utils/ixrun gnu/bin/ixrun
cp -p utils/ixpipe-handler gnu/Sys/l/ixpipe-handler
cp -p $(srcdir)/utils/Mountlist gnu/Sys/devs/MountList.ixpipe
(cd gnu && lha -mraxeq a /distrib/ixemul-bin.lha bin Sys)
sleep 5
rm -rf gnu
#
# Create ixemul-tz.lha, which has timezone related pieces.
#
mkdir -p gnu/etc gnu/bin
cp -p utils/ixtimezone gnu/bin/ixtimezone
cp -p utils/zic gnu/bin/zic
cp -pr utils/zoneinfo gnu/etc/zoneinfo
(cd gnu && lha -mraxeq a /distrib/ixemul-tz.lha bin etc)
sleep 5
rm -rf gnu
#
# Create ixemul-sdk.lha, which contains the files that
# programmers need to build applications that use ixemul.library.
#
mkdir -p gnu/lib/libb
cp -p libsrc/bcrt0.o gnu/lib/bcrt0.o
cp -p libsrc/crt0.o gnu/lib/crt0.o
cp -p libsrc/gcrt0.o gnu/lib/gcrt0.o
cp -p libsrc/mcrt0.o gnu/lib/mcrt0.o
cp -p libsrc/rcrt0.o gnu/lib/rcrt0.o
cp -p libsrc/libc.a gnu/lib/libc.a
cp -p libsrc/libbc.a gnu/lib/libb/libc.a
cp -p libsrc/libc_p.a gnu/lib/libc_p.a
cp -pr $(srcdir)/include gnu/include
cp -pr $(srcdir)/man gnu/man
rm -f gnu/man/Makefile
rm -f gnu/man/makewhatis.sed
rm -f gnu/man/whatis.db
find gnu -name CVS -print | xargs rm -rf
(cd gnu && lha -mraxeq a /distrib/ixemul-sdk.lha lib include man)
sleep 5
rm -rf gnu
#
# Create ixemul-doc.lha, which contains various documentation
# files.
#
mkdir ixemul
cp -p $(srcdir)/COPYRIGHT ixemul/COPYRIGHT
cp -p $(srcdir)/COPYING ixemul/COPYING
cp -p $(srcdir)/COPYING.LIB ixemul/COPYING.LIB
cp -p $(srcdir)/INSTALL ixemul/INSTALL
cp -p $(srcdir)/NEWS ixemul/NEWS
cp -p $(srcdir)/BUGS ixemul/BUGS
cp -p $(srcdir)/TODO ixemul/TODO
cp -p $(srcdir)/docs/README ixemul/README
cp -p $(srcdir)/utils/ixprefs.guide ixemul/ixprefs.guide
cp -p $(srcdir)/utils/ixprefs.guide.info ixemul/ixprefs.guide.info
cp -p $(srcdir)/important.readme ixemul/important.readme
cp -p utils/ixrun.doc ixemul/ixrun.doc
cp -p utils/ixtrace.doc ixemul/ixtrace.doc
cp -p utils/ixtimezone.doc ixemul/ixtimezone.doc
cp -p utils/zic.doc ixemul/zic.doc
lha -mraxeq a distrib/ixemul-doc.lha ixemul
rm -rf ixemul
#
# Create ixemul-src.tgz, which contains the source code.
# Do it in a temporary location so we don't have to
# know where the build dir is, or translate between
# Unix & AmigaDOS forms. We also delete any CVS dirs
# at this time.
#
rm -rf ixemul-src.tgz ixemul
cp -pr $(srcdir) ixemul
find ixemul -name CVS -print | xargs rm -rf
tar -cpf - ixemul | gzip -9 >distrib/ixemul-src.tgz
rm -rf ixemul
#
# Create ixemul-<cpu><fpu>.lha
#
mkdir -p gnu/Sys/libs
cp -p library/68000/soft-float/ixemul.library gnu/Sys/libs/ixemul000.library
cp -p ixnet/68000/soft-float/ixnet.library gnu/Sys/libs/ixnet000.library
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-000s.lha Sys)
rm -f gnu/Sys/libs/*
cp -p library/68000/soft-float/ixemul.trace gnu/Sys/libs/ixemul000.trace
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-000t.lha Sys)
rm -f gnu/Sys/libs/*
cp -p library/68020/soft-float/ixemul.library gnu/Sys/libs/ixemul020.library
cp -p ixnet/68020/soft-float/ixnet.library gnu/Sys/libs/ixnet020.library
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-020s.lha Sys)
rm -f gnu/Sys/libs/*
cp -p library/68030/soft-float/ixemul.library gnu/Sys/libs/ixemul030.library
cp -p ixnet/68030/soft-float/ixnet.library gnu/Sys/libs/ixnet030.library
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-030s.lha Sys)
rm -f gnu/Sys/libs/*
cp -p library/68040/soft-float/ixemul.library gnu/Sys/libs/ixemul040.library
cp -p ixnet/68040/soft-float/ixnet.library gnu/Sys/libs/ixnet040.library
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-040s.lha Sys)
rm -f gnu/Sys/libs/*
cp -p library/68020/68881/ixemul.library gnu/Sys/libs/ixemul020fpu.library
cp -p ixnet/68020/68881/ixnet.library gnu/Sys/libs/ixnet020fpu.library
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-020f.lha Sys)
rm -f gnu/Sys/libs/*
cp -p library/68030/68881/ixemul.library gnu/Sys/libs/ixemul030fpu.library
cp -p ixnet/68030/68881/ixnet.library gnu/Sys/libs/ixnet030fpu.library
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-030f.lha Sys)
rm -f gnu/Sys/libs/*
cp -p library/68040/68881/ixemul.library gnu/Sys/libs/ixemul040fpu.library
cp -p ixnet/68040/68881/ixnet.library gnu/Sys/libs/ixnet040fpu.library
cp -p $(srcdir)/important.readme gnu/Sys/libs/important.readme
(cd gnu && lha -mraxeq a /distrib/ixemul-040f.lha Sys)
sleep 5
rm -rf gnu